<?php
	require_once ("LoginView.php");
	require_once ("LoginModel.php");
	class LoginController{
		public function DoControl(Database $db){		
			$view = new LoginView();
			$model = new LoginModel($db);
			$message = LoginView::NO_MESSAGE;		
			// Loggar ut användaren och visar meddelande, anropar EatCookie för att radera cookies.
			if ($view->TriedToLogOut()){
				$model->DoLogout();
				$message = $view->GetMessage(LoginView::USER_LOGGED_OUT);
				$view->EatCookie();
			}			
			// Försöker logga in och kollar om det finns cookies för auto-login.
			if ($view->TriedToLogin() || $view->CheckCookieJar()){
				if ($model->DoLogin($view->GetUserName(), $view->GetPassword()) == true){
					if($view->WantsCookie() == true){
						$view->BakeCookie();
					}
					$message = $view->GetMessage(LoginView::USER_LOGGED_IN);
				}
				else{
					$message = $view->GetMessage(LoginView::USER_WRONG_INPUT);
				}
			}			
			// Visar Logout-knappen om användaren är inloggad, annars Login-formuläret.
			if($model->IsLoggedIn() == true){
				return $view->DoLogoutBox($message);
			}
			else{
				return $view->DoLoginBox($message);
			}
		}
	}
?>